Class
majorOf:!
35463!
private!
1Point:Dist! !
glyphs!
6263610!
private!
1OrdCltn[Glyph]! !
positions!
6263896!
private!
1OrdCltn[Int]! !
#group!
ui! !
doLayout:!
29039!
private!
1Boolean:Boolean! !
slackBlock!
48192!
accessing!
0[^Int]! !
initWithAll:!
6024023!
initialization!
0WithableVarSeqCltn[Glyph]:! !
minorAllocOf:mismatchesLowMinor:highMinor:!
35897!
private!
1Visual:Int:Int:Boolean! !
replaceFrom:to:with:!
46650!
accessing!
0Int:Int:SeqCltn[Glyph]:OrdCltn[Glyph]! !
near:doFromFront:!
26592!
iteration!
0Region:[Visual]:! !
#categories!
initialization!
iteration!
private!
accessing!
control! !
glyphsFrom:to:!
39800!
accessing!
0Int:Int:VarSeqCltn[Glyph]! !
glyphAt:ifAbsent:!
39588!
accessing!
2Int:[^X def]:Glyph|X! !
alignFirst!
38690!
accessing!
0Boolean! !
slackBlock:!
48336!
accessing!
0[^Int]:! !
glyphAt:!
39420!
accessing!
0Int:Glyph! !
rectWithLowMajor:lowMinor:highMajor:highMinor:!
37453!
private!
1Dist:Dist:Dist:Dist:Rect! !
removeAll!
46500!
accessing!
0! !
insert:before:!
6023792!
accessing!
0SeqCltn[Glyph]:Int:OrdCltn[Glyph]! !
alignFirst:!
38835!
accessing!
0Boolean:! !
#branded!
true! !
relayoutAndInvalidate!
48640!
control!
0! !
cramMajorPosition:into:!
28837!
private!
1Int:ReusedVisualGlyph:! !
pointWithMinor:major:!
36937!
private!
1Dist:Dist:Point! !
layout!
34112!
private!
1! !
changing!
48484!
control!
0! !
slack!
48045!
accessing!
0Int! !
#extensionsAreSubtypes!
true! !
oldindicesBounding:do:!
44630!
accessing!
0Region:[Int,Int]:! !
at:ifAbsent:!
39219!
accessing!
2Int:[^X def]:VisualGlyph|X! !
add:!
38228!
accessing!
0Glyph:! !
indicesBounding:do:!
41076!
accessing!
0Region:[Int,Int]:! !
computePreferences!
27547!
private!
1! !
checkPrevAlloc:ifSame:!
27000!
private!
1Boolean:[]:! !
minorLowOf:!
36696!
private!
1Rect:Dist! !
near:doFromBack:!
26190!
iteration!
0Region:[Visual]:! !
newgridFor:!
43472!
accessing!
0Point:Rect! !
gridFor:!
40069!
accessing!
0Point:Rect! !
minorHighOf:!
36454!
private!
1Rect:Dist! !
doFromFront:!
25824!
iteration!
0[Visual]:! !
#revision!
$Revision: 1.3 $! !
at:!
39012!
accessing!
0Int:VisualGlyph! !
#instanceVariableString!
glyphs <OrdCltn[Glyph]>
			"The collection of glyphs"
positions <OrdCltn[Int]>
			"The positions of the parts along the major dimension"
cachedVG <ReusedVisualGlyph>
			"A cached visual glyph which is used on the fly as the wrapper
				for glyphs as they are transformed into visuals for rendering, etc."
layoutAlloc <Region>
slackBlock <[^Int]>
			"block returning the amount of extra space at the end to add if being reallocated"
alignFirst <Boolean>
			"If this is true, the major baseline will be that of the first element. By default, it is 0"
		! !
size!
47904!
accessing!
0Int! !
addAll:!
38494!
accessing!
0SeqCltn[Glyph]:! !
remove:at:!
46194!
accessing!
0Int:Int:OrdCltn[Glyph]! !
oldgridFor:!
44005!
accessing!
0Point:Rect! !
glyphs:!
6263748!
private!
1OrdCltn[Glyph]:! !
layout:!
34266!
private!
1Boolean:Boolean! !
doFromBack:!
25466!
iteration!
0[Visual]:! !
majorLowOf:!
35222!
private!
1Rect:Dist! !
majorHighEdgeOf:!
34499!
private!
1Int:Int! !
#subtype!
true! !
positions:!
6264038!
private!
1OrdCltn[Int]:! !
#comment!
This is somewhat similar to a RowOrColumn, except that it holds glyphs instead of visuals, and
performs a much simpler and faster layout algorithm which simply makes everything its natural
size.  The only other difference is that the right/bottom edge (whichever is the major dimension)
is stretchy.

(c) 1995-1997 Sun Microsystems, Inc. ALL RIGHTS RESERVED. 
Use and distribution of this software is subject to the terms of the attached source license.   $Revision: 1.3 $
! !
#abstract!
true! !
majorTotalOf:!
35676!
private!
1Rect:Dist! !
majorHighOf:!
34980!
private!
1Rect:Dist! !
#superclassTypeString!
ComplexCompositeVisual[Visual]! !
do:!
25319!
iteration!
0[Visual]:! !
tryIncrementalLayout!
38066!
private!
1Boolean! !
shouldStartLayingOut:at:incremental:!
37770!
private!
1:::! !
indexBounding:ifFail:!
40599!
accessing!
2Int:[^X def]:Int|X! !
